// biliSearch.js

let timer = null;
let authorArr = [
  '前端小夏老师',
  '北京一灯教育',
  '渡一机构',
  '大伟聊前端',
  '程序员小伙伴',
  '渡一教育编程课堂',
  '渡一前端教科书',
  '渡一教育-前端进阶课',
  '渡一前端提薪空间',
  '程序员筱筱',
  '前端乐哥',
  '小朋友程序员',
  '后盾人编程',
  '前端小智',
  '程序员小山与Bug',
  '渡一前端每日必修课B',
  '哆啦niko',
  '前端老猫',
  '球球的前端奶茶屋',
  '柴柴_前端教书匠',
  '前端面试真题',
  '前端程序员来了',
  '渡一教育-Web前端开发',
  '阿崔cxr',
  '技术胖',
  '哔哩winter',
  '峰华前端工程师',
  '小Lin说',
  '就业发动机',
  '编程麦3',
  '程序员山月',
  '飞叶_程序员',
  '盆盆儿WEB前端',
  '程序员铮铮',
  '白哥学前端',
  '前端圈',
  '李立超老师',
  '闰土聊Web3',
  '求知编程学院',
  '前端周老师',
  '账号已注销',
  'siki学院',
  'GDGXian',
  '五分钟学技术',
  '哑牛开荒田_',
  '康文昌',
  'soloの前端星球',
  '前端bubucuo',
  '程序员Sunday',
  '前端杨村长',
  '动力IT实训',
  'NinJa427',
  'codereasy',
  '老陈打码',
  '千锋教育',
  'AnthonyFu一个托尼',
  '程序员鱼皮',
  '程序员云谦',
  '支付宝体验科技',
  '艺述论',
  '前端小野森森-1',
  '爪哇教育',
  '前端小然子xiaoranzife',
  '李永乐老师官方',
  '魔术师卡颂',
  'Ele实验室',
  '小左Filine',
  'Topbook',
  '尚硅谷',
  '青盟课堂',
  '慕课网官方账号',
  '花果山-大圣',
  '99uki',
  '前端铁蛋儿',
  'dev-zuo',
  '飞桨PaddlePaddle',
  '开课吧小易',
  '渡一教育-提薪课',
  '编程段子',
  '写代码的游弋',
  '程序员中的一枝花',
  '渡一教育前端提升课',
  '渡一教育前端进阶课',
  '渡一前端必修课',
  '小野森森的Golang',
  '前端亮亮',
  '少北晨',
  '想去钓鱼的程序员包包',
  '渡一前端教科频道',
  '前端小野森森-2',
  '前端小野森森-场景化',
  '活蹦乱跳小菜鱼',
  '山羊の前端小窝',
  '水哥澎湃',
  '郭隆邦',
  '前端达人-',
  'JavaScript高级教程',
  '爱哭的赵一一',
  'codewith小夏',
  '前端刘小灰',
  '茄子懂编程',
  '面向加薪学习',
  '渡一教科书复习基地',
  '远方os',
  '渡一前端必修空间m',
  '好奇代码的三木',
  '哲玄前端', // 所有视频已刷完
  '吴悠讲编程', // 所有视频已刷完
  '我是哈默', // 所有视频已刷完
]; // 关注者的数组

// 请求关注的博主函数(不能一次性请求，B站一次只返回50条数据)
// async function getAuthor(pn = 1) {
//   let url = `https://api.bilibili.com/x/v2/relation/followings?vmid=205423044&pn=${pn}&ps=100&order=desc&order_type=attention&w_rid=02de35964a33fbcddbd6b8de4b4d2526&wts=1691332294`;
//   let res = await fetch(url);
//   console.log(`biliSearch.js 13 [res]`, res);
//   console.log(`biliSearch.js 14 [res.json]`, res.json);
//   let data = await res.json();
//   console.log(`biliSearch.js 15 [data]`, data);
//   // console.log('关注的博主', data.list);
// }

export function BiliSearchCallBack() {
  window.addEventListener('beforeunload', function (event) {
    clearInterval(timer);
  });

  let timer = setInterval(async () => {
    let className = 'bili-video-card__info--author';
    let authorDoms = document.getElementsByClassName(className);
    if (authorDoms.length) {
      for (let i = 0, len = authorDoms.length; i < len; i++) {
        let curText = authorDoms[i].innerText; // textContent
        if (authorArr.includes(curText)) {
          let parentElement = authorDoms[i].parentElement.parentElement;
          parentElement.style.color = 'red';
          parentElement.style.fontWeight = '700';
          parentElement.style.backgroundColor = '#589ef8';
        }
      }
    }
  }, 1000);
}
